package com.ddxcloud.movie.data.entity;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.annotation.JsonInclude;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
import org.springframework.format.annotation.DateTimeFormat;

import java.util.List;

/**
 * @author Mr.Lin
 * @description 文件底部有例子
 * @date 2020/8/26 10:18
 */
@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class MyFormItem {

    @JsonInclude(JsonInclude.Include.NON_NULL)
    //"身份证号码"
    private String idCard;

    @JsonInclude(JsonInclude.Include.NON_NULL)
    // "姓名"
    private String name;

    @JsonInclude(JsonInclude.Include.NON_NULL)
    // "办事编号|流水单号"
    private String orderNo;

    @JsonInclude(JsonInclude.Include.NON_NULL)
    // "事项名称"
    private String matter;

    @JsonInclude(JsonInclude.Include.NON_NULL)
    // "事项类型编码"
    private String itemCode;

    @JsonInclude(JsonInclude.Include.NON_NULL)
    // "事项类型"
    private Integer itemType;

    @JsonInclude(JsonInclude.Include.NON_NULL)
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    // "办理时间|提交时间"
    private java.util.Date acceptTime;

    @JsonInclude(JsonInclude.Include.NON_NULL)
    // "预约|办理地址"
    private String addr;

    @JsonInclude(JsonInclude.Include.NON_NULL)
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    // "办结时间"
    private java.util.Date finishTime;//

    @JsonInclude(JsonInclude.Include.NON_NULL)
    // "办理状态|状态"
    private Integer status;

    @JsonInclude(JsonInclude.Include.NON_NULL)
    // "失败原因"
    private String failName;

    @JsonInclude(JsonInclude.Include.NON_NULL)
    // "状态描述 (没有保存到索引层)"
    private String statusName;//

    @JsonInclude(JsonInclude.Include.NON_NULL)
    // "是否接入好差评( 1.是 )", name = "isGoodBad")
    private String isGoodBad;//

    @JsonInclude(JsonInclude.Include.NON_NULL)
    // "办结状态", name = "processStatus")
    private String processStatus;

    @JsonInclude(JsonInclude.Include.NON_NULL)
    // "办结结果", name = "processResult")
    private String processResult;

    @JsonInclude(JsonInclude.Include.NON_NULL)
    // "是否法人，0-- 个人 1-- 法人", name = "isfr")
    private String isfr;

    @JsonInclude(JsonInclude.Include.NON_NULL)
    // "三方业务流水", name = "tpYwls")
    private String tpYwls;

    @JsonInclude(JsonInclude.Include.NON_NULL)
    // "显示渠道", name = "channels", notes = "com.zetian.utils.enums.ChannelCodeEnum")
    private List<String> channels;

    @JsonInclude(JsonInclude.Include.NON_NULL)
    // "事项显示规则", name = "showRule")
    private List<MyFormItemShowRule> showRule;

    @JsonInclude(JsonInclude.Include.NON_NULL)
    // "所属部门-字典编码", name = "depCode", notes = "com.zetian.utils.enums.ItemDeptEnum")
    private String depCode;  //可以传多个 使用','隔开

    @JsonInclude(JsonInclude.Include.NON_NULL)
    // "三方部门名称", name = "thirdDepName")
    private String thirdDepName;

    @JsonInclude(JsonInclude.Include.NON_NULL)
    // "表单源数据JSON", name = "formJson")
    private String formJson;//

    @JsonInclude(JsonInclude.Include.NON_NULL)
    // "我的事项- 视图表单数据", name = "itemColumns")
    private List<ItemColumn> itemColumns;//

}
